#!/bin/bash
# XJar 加密工具封装
# 用法: ./xjar-helper.sh <input.jar> <output.jar>

# 检查是否安装了 Java
if ! command -v java &> /dev/null; then
    echo "错误: 未检测到 Java，请先安装 JDK!"
    exit 1
fi

# 检查环境变量 XJAR_PASSWORD 是否存在
if [ -z "$XJAR_PASSWORD" ]; then
    echo "错误: 请先设置环境变量 XJAR_PASSWORD!"
    echo "示例: export XJAR_PASSWORD=\"your-password\""
    exit 1
fi

# 检查输入参数
if [ "$#" -ne 2 ]; then
    echo "用法: $0 <原始文件.jar> <加密后文件.jar>"
    exit 1
fi

INPUT_JAR=$1
OUTPUT_JAR=$2

# 检查原始文件是否存在
if [ ! -f "$INPUT_JAR" ]; then
    echo "错误: 原始文件 $INPUT_JAR 不存在!"
    exit 1
fi

# 执行加密命令
echo "正在加密 $INPUT_JAR -> $OUTPUT_JAR ..."
java -jar xjar-spring-boot-starter.jar "$INPUT_JAR" -o "$OUTPUT_JAR" --xjar.password="$XJAR_PASSWORD"

# 检查加密结果
if [ $? -eq 0 ] && [ -f "$OUTPUT_JAR" ]; then
    echo "加密成功! 输出文件: $OUTPUT_JAR"
else
    echo "加密失败!"
    exit 1
fi
